﻿<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>高级快捷键功能- 鼠标和键盘快捷键</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="alternate" type="application/rss+xml" title="AutoHotkey Forum RSS" href="../forum/rss.php">
<link href="css/default.css" rel="stylesheet" type="text/css">

</head>

<body>
<h1>高级快捷键功能</h1>

<p>注意：下述功能中，多数需要 Windows NT/2000/XP 或更高版本操作系统。<br>
  <br>
<u>让最容易按的键变得更有用</u>：有些键占了好位置，易于按下，但却不常用。为什么不改造它们呢？比如，如果你的右 ALT 键很不常用，则不妨为它指定一个常用的操作：</p>
<pre>RAlt::
MsgBox 你按下了右 ALT 键。
return</pre>
<p>另外，也可以把右 Alt 作为一个“引导键”，再加上一个其他键组成快捷键。这样的好处是不会占用右Alt的本来功能。在下面的例子中，右Alt 就成为了引导键，和j一起，实现了切换窗口的功能。作为引导键，它可以和<strong>任何</strong>其他键一起按下发挥作用。而没有其他键按下时，它仍然能发挥自己的作用（如上面的例子）：</p>
<pre>RAlt &amp; j::AltTab</pre>
<p>&nbsp;</p>
<p><u>修饰键不再局限于 CTRL、ALT、SHIFT 和 WIN</u>：你可以使用<strong>任意</strong>两个按键或鼠标按键组成自定义快捷键。例如，按住小键盘数字0，再按下数字1 就形成了一个快捷键（写为：Numpad0 &amp; Numpad1::）；按住 CapsLock，再按下另一个键或用鼠标点击右键（写为：CapsLock &amp; RButton::）。这种情况下，CapsLock 键的状态（大写/小写）不会发生改变。详见 <a href="Hotkeys.htm#combo">自定义组合键</a>。</p>
<p>&nbsp;</p>
<p><u><a name="AltTab"></a>用鼠标滚轮（或其他键）代替 Alt-Tab</u>：点击鼠标滚轮，就可以显示窗口选择菜单；上下滚动，就在各窗口图标进行选择；选中之后再次按下滚轮，则切换到选中的窗口。并且，在Alt-Tab菜单不出现时，鼠标滚轮的正常功能仍然可以使用。脚本：</p>
<pre>MButton::AltTabMenu
WheelDown::AltTab
WheelUp::ShiftAltTab</pre>
<p>&nbsp;</p>
<p><u>让按键<strong>变成</strong>鼠标键</u>，或者在按住某个键或鼠标键时，让计算机重复某个动作。示例见 <a href="misc/Remap.htm#mouse">remapping page</a>。</p>
<p>&nbsp;</p>
<p><u>让快捷键</u><u>区分情境</u>：可以让最易使用的快捷键在不同的程序中，调用不同的最常用功能。下面的脚本可以让右Ctrl键在记事本和计算器中，分别实现不同功能：</p>
<pre>#IfWinActive ahk_class Notepad
RControl::WinMenuSelectItem, , , 文件, 保存  <em>; 在记事本中保存当前文件</em>

#IfWinActive ahk_class SciCalc
RControl::Send, ^c!{tab}^v  <em>; 在计算器中，把计算结果复制到原来的活动窗口</em></pre>
<p>详见 <a href="commands/_IfWinActive.htm">#IfWinActive</a>。</p>
<p>&nbsp;</p>
<p><u>热字符串：实现缩写功能</u>。无须经过任何培训，就可以写出这样的脚本。例如，下述脚本将自动把 ceo, cfo, 和 btw 替换成完整拼写：（注：暂不支持汉字）</p>
<pre>::ceo::Chief Executive Officer
::cfo::Chief Financial Officer
::btw::by the way</pre>
<p><a href="Hotstrings.htm">（更详内容）</a><br>
</p>
<p>&nbsp;</p>
<p><strong><u>如果你对游戏感兴趣：</u></strong></p>
<ul>
  <li>别人拼血流汗时，你只需动一下手指，就能发出一系列复杂操作。因为常用操作可以定义到几乎<a href="KeyList.htm">任意键</a>上，包括单一的字母键、方向键、数字键，甚至是特殊键（CTRL/ALT/WIN/SHIFT）。</li>
  <li>为鼠标键，包括滚轮（MButton）、上下左右滚动（WheelUp、WheelDown、WheelLeft 和 WheelRight）进行快捷键定义。还可以将鼠标键盘结合起来。如，按住ctrl点击右键可写为 ^RButton::</li>
  <li>创建“穿越型”快捷键。例如，点击鼠标左键，一方面触发快捷键动作，另一方面，仍和往常一样，游戏也接收到了左键单击（写为：~LButton::）。</li>
  <li>使用诸如 <a href="commands/PixelSearch.htm">PixelSearch</a>（像素搜索）、<a href="commands/PixelGetColor.htm">PixelGetColor</a>（取得像素颜色）、<a href="commands/ImageSearch.htm">ImageSearch</a>（搜索图像）这样的命令来实现自动操作。</li>
  <li>可以选择使用 <a href="commands/_UseHook.htm">keyboard hook</a>来实现快捷键。在游戏占用较多CPU资源时，此方法比其他方法的响应性更好。它还能覆盖游戏软件本身对哪些键可以映射的限制。</li>
</ul>
<p>更多信息，请见 <a href="Hotkeys.htm">Hotkeys</a> 章节。</p>
</body>
</html>
